package com.course02.order_backend.entity.llh;

import lombok.Data;

//统一返回结果
@Data
public class Result<T> {
    //状态码
    private Integer code;
    //提示信息，成功为空，失败是枚举的message
    private String msg;
    //业务数据，成功是返回，失败返回null
    private T data;
    //失败时快速创建错误结束(关联枚举）
    public static <T> Result<T> error(Integer code,String msg){
        Result<T> result=new Result<>();
        result.code=code;
        result.msg=msg;
        return result;
    }
    //成功是返回数据(如查询菜品列表，返回List<Dish>）
    public static <T> Result<T> success(T data){
        Result<T> result=new Result<>();
        result.code=0;
        result.data=data;
        return result;
    }
    //成功时用：无数据（如取消订单成功，只需提示）
    public  static  <T> Result<T> success(){
        return success(null);
    }

}
